package com.xmfh.wemedia.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xmfh.wemedia.model.DdVideo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author admin
 * @since 2022-04-06
 */
@Mapper
public interface DdVideoMapper extends BaseMapper<DdVideo> {

    /**
     * 插入新视频
     *
     * @param ddVideo 包含用户上传视频的包装类
     * @return 受影响的行数，应为1
     */
    Integer insertNewVideo(DdVideo ddVideo);

    /**
     * 获取全站最热视频
     *
     * @return 全站热度前10的视频
     */
    List<DdVideo> getVideoByHot();

    /**
     * 获取个人页面中视频分页内容
     *
     * @param id 目前登陆用户ID
     * @return 个人视频合集
     */
    List<DdVideo> getPersonalVideoById(Integer id);

    /**
     * 通过视频URL获取该视频ID
     *
     * @param videoUrl 该视频的URL
     * @return 该视频的ID
     */
    Integer getVideoIdByVideoUrl(String videoUrl);

    enum styleFlag {
        NON("non"),
        SINGLE("single"),
        MULTI("multi");

        String flag;

        styleFlag(String flag) {
            this.flag = flag;
        }

        public String getFlag() {
            return flag;
        }
    }
}
